package test.mt;

import java.util.Scanner;

/**
 * @Description
 * @Author Firenut
 * @Date 2023-08-19 20:20
 */
public class T3 {
    // 反转 ？ 位运算

    // 0 0 1 反转就有问题
    public static void main(String[] args) {
        int ans = 0;
        Scanner in = new Scanner(System.in);
        String s = in.next();
        // 枚举长度为j的子串
        for (int j = 2; j <= s.length(); j++) {
            for (int i = 0; i < s.length() - (j - 1); i++) {
                // 长度为 j 的子数组
                if (i + j <= s.length()) {
                    // 避免越界
                    char[] array = s.substring(i, i + j).toCharArray();
                    ans += reverse(array);
                }
            }
            System.out.println(ans);
        }
        System.out.println(ans);
    }

    static int reverse(char[] s) {
        int ans = 0;
        for (int i = 1; i < s.length; i++) {
            if (s[i] == s[i - 1]) {
                flip(s, i);
                ans++;
            }
        }
        return ans;
    }

    static void flip(char[] s, int i) {
        s[i] = s[i] == '0' ? '1' : '0';
    }
}
